1. Field of the Invention
This invention is in the field of software implemented screencasting applications for handheld computerized devices such as Smartphones, as well as in the fields of video gaming technology and online social network technology.
2. Description of the Related Art
In recent years, handheld computerized devices such as Smartphones, tablet computers and the like, exemplified by the Apple iOS and Android series of Smartphones and tablet computers, have become nearly ubiquitous. These devices are often highly capable. They are usually equipped with at least one high performance microprocessor or microprocessor core (often with an onboard graphics coprocessor), gigabytes of memory, and high-resolution, touch-sensitive display screens. One of the reasons why the devices are so popular is that they allow their users to upload and run various third party applications, such as utility software, applications software, and various types of video games.
As a result, Smartphone/mobile phone based video games have become extremely popular, and indeed represent the fastest growing segment of the video games industry. Smartphone based video games are, on a unit sales basis, now in the process of overtaking all other forms of games, from console based video games, to PC video games, and even dedicated portable hardware video games.
In this discussion unless otherwise specified, Smartphone devices and tablet devices will often be referred to generically as “Smartphones”. From a definitional standpoint, a Smartphone should be considered to be a pocket sized tablet computer with wireless cell phone transceiver capability. A tablet computer should usually be considered to be a larger sized (e.g. 7″, 10″ screen) device with at least wireless WiFi connectivity, but not necessarily a cellular phone transceiver. Smaller screen devices in this family with WiFi transceivers but without cell phone transceivers, exemplified by the Apple iPod touch family of products, are also covered by the invention under the overall “Smartphone” designation although these can be considered to be a species of smaller screen tablet devices.
Gaming is often a social experience, and video gamers enjoy sharing their gaming experience with others. One of the most common ways that video game players do this is by recording a movie or a partial movie of their game session, usually thorough video screen capture software, and then by sharing this movie with others.
In addition to gaming, users of other types of applications software may also wish to share their experience with others as well. Although this specification will generally refer to the use of gaming software and shared gaming experiences, unless otherwise specified, the concepts herein will more generally refer to sharing the display screen output from a variety of different Smartphone applications.
The process of recording computer screen output is often called “screencasting”. There are a number of hardware and software methods to implement screencasting, exemplified by Adobe Captivate, Adobe Systems, Inc; Camtasia Studio, TechSmith Corporation, and the like. Prior art in this area includes Hamilton et. al., “Automated system and method for conducting usability testing”, U.S. Pat. No. 7,184,918. There are also a number of different hardware based screen capture systems as well.
Hamilton taught a method for conducting usability tests, and the Hamilton patent, originally filed in 2005 before the advent of modern Smartphones and tablet computers, taught techniques more appropriate for traditional personal computer devices with large display screens. Hamilton's methods, oriented towards computer instruction technology, teach a technique wherein the user would set a plurality of different recording settings, and use a rather complex software program to record instructional videos and the like. Hamilton's methods were adapted to traditional personal computers and operating systems that generally posed few barriers to allowing third party software to get root access to the computer, and thus acquire privileged control over the host computer system.
By contrast, the operating systems for Smartphones and other mobile handheld computerized devices, such as tablet computers, are often designed to deny root access to users and user applications.
The Apple iOS operating system, in particular, is notorious for very securely locking down the device and denying users root access. By contrast, the Android operating system is somewhat more permissive, and depending on the software version, may permit or deny users root access with various degrees of stringency.
For essentially all models of Smartphone, technically savvy users often find ways to work around operating restrictions to gain root access, even when the operating system was originally designed to prevent such access. This process is often referred to as jail-breaking or rooting. Such jail-breaking or rooting processes are strongly and actively disfavored by manufacturers however, and thus are outside of the realm of standard practice for the majority of Smartphone users. Additionally, manufacturers frequently release operating system updates that “break” or overcome previous jail-breaking methods, making jail-breaking methods of acquiring root access more of a demanding skill for technical enthusiasts rather than a routine general purpose software methodology. This situation is unfortunate, since access to computationally intensive audio and visual processing techniques can be greatly facilitated when root access is available.
At present, although there are over 500,000 mobile apps (Smartphone apps) presently published, there are only a handful of video capture apps that are presently available for mobile phones. These include the “Z-Screen Recorder” by ZAUSAN Innovación Tecnológica, and “Screencast Video Recorder”, both of which run on the Android operating system and require root access to perform their task.
Another approach is exemplified by “Kamcord”, which is an iOS software package provided in source code and library format to developers to enable them to implement a screencast feature by integrating and delivering this software package with their application (e.g. a game application can incorporate Kamcord routines and thus make screencasting capability an integral part of the game itself).
By having the application itself do the recording, Kamcord bypasses the issues inherent in having a separate screencast application and the need for that application to take control of the information in the mobile device screen buffer to perform its task, such control requiring in most operating system root access. The application can render the display in a temporary buffer separate from the protected screen buffer and this buffer can be used for recording purpose. Modern mobile devices have hardware that is fast enough for the impact of this extra step to be minimal from the user perspective.